package Reeks5.VanRansbeeck.Kevin.View;

import Reeks5.VanRansbeeck.Kevin.Model.*;
import java.util.Observable;
import java.util.Observer;
import javax.swing.*;

public class StatePanel extends JPanel implements Observer {
    JList list;
    String data[][] = new String[8][2];
    Spel spel;
    
    public StatePanel(Spel spel) {
        super();
        
        this.setSpel(spel);
        for(int i = 0; i < 8; i++) {
            data[i][0] = spel.getSpelers().get(i).getNaam();
            data[i][1] = spel.getSpelers().get(i).getStateContext().toString();
        }
        
        list = new JList();
        list.setListData(data);
        list.setCellRenderer(new StatesCellRenderer());
        
        this.add(list);
    }

    public Spel getSpel() {
        return spel;
    }

    private void setSpel(Spel spel) {
        this.spel = spel;
    }

    public void update(Observable o, Object o1) {
        for(int i = 0; i < 8; i++) {
            data[i][1] = spel.getSpelers().get(i).getStateContext().toString();
        }
            
        list.setListData(data);
        list.repaint();
    }
}
